package wiki.generic.bar;

import java.util.HashMap;
import java.util.List;


/**
 * 
 * @author <p><strong>JwTeam</strong></p> 
 * Interfaccia per la gestione della sidebar, definisce i metodi per la gestione dei link della sidebar
 */
public interface SideBar {
	
	/**
	 * 
	 * @return mappa dei link
	 */
	public HashMap<String, List<BarLink>> getMapLinks();
	
	/**
	 * 
	 * @return  lista categorie
	 */
	public List<String> getCategories();
	
	/**
	 * 
	 * @param category categoria link
	 * @param link link da mettere nella barra barra
	 */
	public void addLink (String category, BarLink link);
	
	/**
	 * 
	 * @param name nome categoria da rimuovere
	 */
	public void deleteCategory(String name);
	
	/**
	 * 
	 * @param category categoria link
	 * @param linkName nome del link da rimuovere
	 */
	public void deleteLink(String category, String linkName);
	
	/**
	 * 
	 * @param category categoria link
	 * @param linkName nome del link da rinominare
	 * @param newName nuovo nome per il link
	 */
	public void renameLink(String category, String linkName, String newName);
}
